﻿



using System; 
using System.Collections;
using System.Collections.Generic ;
using System.Runtime.Serialization;

namespace ufida.u9.ait.openapi
{
	/// <summary>
	/// 完工报告入库明细行 Copy DTO :REST自定义的数据传输类型 
	/// 
	/// </summary>
	[DataContract(Namespace = "ufida.u9.ait.openapi")]
	[Serializable]
	public partial class CopyOfCompRptRcvLineDTOData  
	{
		/// <summary>
		/// Default Constructor
		/// </summary>
		public CopyOfCompRptRcvLineDTOData()
		{
			initData();
		}
		private void initData()
		{
		
					LineNum= 0; 
				
		
		
		
					StorageType= 4; 
							Grade= -1; 
							Element= -1; 
							CostPercent=0m; 
					RcvLotMaster= 0; 
				
					RcvQtyByProductUOM=0m; 
					RcvQtyByWhUOM=0m; 
					RcvQtyByCostUOM=0m; 
					CUD= 0; 
				
		
		

			//调用默认值初始化服务进行配置方式初始化
			UFSoft.UBF.Service.DTOService.InitConfigDefault(this);
		}
		[System.Runtime.Serialization.OnDeserializing]
		internal void OnDeserializing(System.Runtime.Serialization.StreamingContext context)
		{
			 initData();
		}
		#region Do SerializeKey -ForDTODataType
		//只为处理集合型EntityKey。原因集合型EntityKey由于使用臫的集合对象，无法实现数据共享.-UBF专用.
		public void DoSerializeKeyList(IDictionary dict)
		{
			if (dict == null ) dict = new Hashtable() ;
			if (dict[this] != null)
				return ;
			dict[this] = this;
	        			if (this.CompleteRpt != null) 
			{
				this.CompleteRpt.DoSerializeKeyList(dict);
			}
	        	        			if (this.SourceCompleteRptRcv != null) 
			{
				this.SourceCompleteRptRcv.DoSerializeKeyList(dict);
			}
	        			if (this.SourceCompleteRptRcvLine != null) 
			{
				this.SourceCompleteRptRcvLine.DoSerializeKeyList(dict);
			}
	        			if (this.Wh != null) 
			{
				this.Wh.DoSerializeKeyList(dict);
			}
	        			if (this.Bin != null) 
			{
				this.Bin.DoSerializeKeyList(dict);
			}
	        	        	        	        	        	        	        	        	        	        	        			if (this.DescFlexField != null) 
			{
				this.DescFlexField.DoSerializeKeyList(dict);
			}
	        			if (this.SnData!=null)
			{
				foreach(ufida.u9.ait.openapi.CopyOfSnUsedDTOData objdata in this.SnData)
				{
					objdata.DoSerializeKeyList(dict);
				}
			}
				        			if (this.CopyOfCompRptDTO != null) 
			{
				this.CopyOfCompRptDTO.DoSerializeKeyList(dict);
			}

		}
		#endregion 
		/// <summary>
		/// Constructor Full Argument
		/// </summary>
		public CopyOfCompRptRcvLineDTOData(  ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData completeRpt  , System.Int32 lineNum  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData sourceCompleteRptRcv  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData sourceCompleteRptRcvLine  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData wh  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData bin  , System.Int32 storageType  , System.Int32 grade  , System.Int32 element  , System.Decimal costPercent  , System.Int64 rcvLotMaster  , System.String rcvLotNo  , System.Decimal rcvQtyByProductUOM  , System.Decimal rcvQtyByWhUOM  , System.Decimal rcvQtyByCostUOM  , System.Int32 cUD  , ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData descFlexField  , List<ufida.u9.ait.openapi.CopyOfSnUsedDTOData> snData  , ufida.u9.ait.openapi.CopyOfCompRptDTOData copyOfCompRptDTO  )
		{
			initData();
			this.CompleteRpt = completeRpt;
			this.LineNum = lineNum;
			this.SourceCompleteRptRcv = sourceCompleteRptRcv;
			this.SourceCompleteRptRcvLine = sourceCompleteRptRcvLine;
			this.Wh = wh;
			this.Bin = bin;
			this.StorageType = storageType;
			this.Grade = grade;
			this.Element = element;
			this.CostPercent = costPercent;
			this.RcvLotMaster = rcvLotMaster;
			this.RcvLotNo = rcvLotNo;
			this.RcvQtyByProductUOM = rcvQtyByProductUOM;
			this.RcvQtyByWhUOM = rcvQtyByWhUOM;
			this.RcvQtyByCostUOM = rcvQtyByCostUOM;
			this.CUD = cUD;
			this.DescFlexField = descFlexField;
			this.SnData = snData;
			this.CopyOfCompRptDTO = copyOfCompRptDTO;
		}
		#region System Fields 
		//--系统字段,目前没有.EntityData上有相应的字段,用于保存相关的实体状态信息,DTO上没有状态信息.	
		#endregion
		
		#region DTO Properties 
	
		

		/// <summary>
		/// 完工报告
		/// 完工报告入库明细行 Copy.Misc.完工报告
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_completeRpt ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData CompleteRpt
		{
			get	
			{	
				return m_completeRpt ;
			}
			set	
			{	
				m_completeRpt = value ;	
			}
		}
			
		

		/// <summary>
		/// 行号
		/// 完工报告入库明细行 Copy.Misc.行号
		/// </summary>
		private System.Int32 m_lineNum ;
		[DataMember(IsRequired=false)]
		public System.Int32 LineNum
		{
			get	
			{	
				return m_lineNum ;
			}
			set	
			{	
				m_lineNum = value ;	
			}
		}
			
		

		/// <summary>
		/// 来源完工报告
		/// 完工报告入库明细行 Copy.Misc.来源完工报告
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_sourceCompleteRptRcv ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData SourceCompleteRptRcv
		{
			get	
			{	
				return m_sourceCompleteRptRcv ;
			}
			set	
			{	
				m_sourceCompleteRptRcv = value ;	
			}
		}
			
		

		/// <summary>
		/// 来源完工报告入库子表
		/// 完工报告入库明细行 Copy.Misc.来源完工报告入库子表
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_sourceCompleteRptRcvLine ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData SourceCompleteRptRcvLine
		{
			get	
			{	
				return m_sourceCompleteRptRcvLine ;
			}
			set	
			{	
				m_sourceCompleteRptRcvLine = value ;	
			}
		}
			
		

		/// <summary>
		/// 存储地点
		/// 完工报告入库明细行 Copy.Misc.存储地点
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_wh ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Wh
		{
			get	
			{	
				return m_wh ;
			}
			set	
			{	
				m_wh = value ;	
			}
		}
			
		

		/// <summary>
		/// 库位
		/// 完工报告入库明细行 Copy.Misc.库位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_bin ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Bin
		{
			get	
			{	
				return m_bin ;
			}
			set	
			{	
				m_bin = value ;	
			}
		}
			
		

		/// <summary>
		/// 存储类型
		/// 完工报告入库明细行 Copy.Misc.存储类型
		/// </summary>
		private System.Int32 m_storageType ;
		[DataMember(IsRequired=false)]
		public System.Int32 StorageType
		{
			get	
			{	
				return m_storageType ;
			}
			set	
			{	
				m_storageType = value ;	
			}
		}
			
		

		/// <summary>
		/// 等级
		/// 完工报告入库明细行 Copy.Misc.等级
		/// </summary>
		private System.Int32 m_grade ;
		[DataMember(IsRequired=false)]
		public System.Int32 Grade
		{
			get	
			{	
				return m_grade ;
			}
			set	
			{	
				m_grade = value ;	
			}
		}
			
		

		/// <summary>
		/// 成分
		/// 完工报告入库明细行 Copy.Misc.成分
		/// </summary>
		private System.Int32 m_element ;
		[DataMember(IsRequired=false)]
		public System.Int32 Element
		{
			get	
			{	
				return m_element ;
			}
			set	
			{	
				m_element = value ;	
			}
		}
			
		

		/// <summary>
		/// 成本比例
		/// 完工报告入库明细行 Copy.Misc.成本比例
		/// </summary>
		private System.Decimal m_costPercent ;
		[DataMember(IsRequired=false)]
		public System.Decimal CostPercent
		{
			get	
			{	
				return m_costPercent ;
			}
			set	
			{	
				m_costPercent = value ;	
			}
		}
			
		

		/// <summary>
		/// 入库批号主档
		/// 完工报告入库明细行 Copy.Misc.入库批号主档
		/// </summary>
		private System.Int64 m_rcvLotMaster ;
		[DataMember(IsRequired=false)]
		public System.Int64 RcvLotMaster
		{
			get	
			{	
				return m_rcvLotMaster ;
			}
			set	
			{	
				m_rcvLotMaster = value ;	
			}
		}
			
		

		/// <summary>
		/// 入库批号
		/// 完工报告入库明细行 Copy.Misc.入库批号
		/// </summary>
		private System.String m_rcvLotNo ;
		[DataMember(IsRequired=false)]
		public System.String RcvLotNo
		{
			get	
			{	
				return m_rcvLotNo ;
			}
			set	
			{	
				m_rcvLotNo = value ;	
			}
		}
			
		

		/// <summary>
		/// 入库数量(生产单位)
		/// 完工报告入库明细行 Copy.Misc.入库数量(生产单位)
		/// </summary>
		private System.Decimal m_rcvQtyByProductUOM ;
		[DataMember(IsRequired=false)]
		public System.Decimal RcvQtyByProductUOM
		{
			get	
			{	
				return m_rcvQtyByProductUOM ;
			}
			set	
			{	
				m_rcvQtyByProductUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 入库数量(库存单位)
		/// 完工报告入库明细行 Copy.Misc.入库数量(库存单位)
		/// </summary>
		private System.Decimal m_rcvQtyByWhUOM ;
		[DataMember(IsRequired=false)]
		public System.Decimal RcvQtyByWhUOM
		{
			get	
			{	
				return m_rcvQtyByWhUOM ;
			}
			set	
			{	
				m_rcvQtyByWhUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 入库数量(成本单位)
		/// 完工报告入库明细行 Copy.Misc.入库数量(成本单位)
		/// </summary>
		private System.Decimal m_rcvQtyByCostUOM ;
		[DataMember(IsRequired=false)]
		public System.Decimal RcvQtyByCostUOM
		{
			get	
			{	
				return m_rcvQtyByCostUOM ;
			}
			set	
			{	
				m_rcvQtyByCostUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 增删改标志
		/// 完工报告入库明细行 Copy.Misc.增删改标志
		/// </summary>
		private System.Int32 m_cUD ;
		[DataMember(IsRequired=false)]
		public System.Int32 CUD
		{
			get	
			{	
				return m_cUD ;
			}
			set	
			{	
				m_cUD = value ;	
			}
		}
			
		

		/// <summary>
		/// 实体扩展字段
		/// 完工报告入库明细行 Copy.Misc.实体扩展字段
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData m_descFlexField ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData DescFlexField
		{
			get	
			{	
				return m_descFlexField ;
			}
			set	
			{	
				m_descFlexField = value ;	
			}
		}
			
		

		/// <summary>
		/// 序列号
		/// 完工报告入库明细行 Copy.Misc.序列号
		/// </summary>
		private List<ufida.u9.ait.openapi.CopyOfSnUsedDTOData> m_snData ;
		[DataMember(IsRequired=false)]
		public List<ufida.u9.ait.openapi.CopyOfSnUsedDTOData> SnData
		{
			get	
			{	
				if (m_snData == null )
				{
					List<ufida.u9.ait.openapi.CopyOfSnUsedDTOData> n_m_list = new List<ufida.u9.ait.openapi.CopyOfSnUsedDTOData>() ;
					m_snData = n_m_list ;
				}
				return m_snData ;
			}
			set	
			{	
				m_snData = value ;	
			}
		}
			
		

		/// <summary>
		/// 完工报告单头 Copy
		/// 完工报告入库明细行 Copy.Misc.完工报告单头 Copy
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCompRptDTOData m_copyOfCompRptDTO ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCompRptDTOData CopyOfCompRptDTO
		{
			get	
			{	
				return m_copyOfCompRptDTO ;
			}
			set	
			{	
				m_copyOfCompRptDTO = value ;	
			}
		}
			
		#endregion	

		#region Multi_Fields
																																						
		#endregion 
	} 	
}
